示例#1
0
# File Name : test_nmnist.py
# Author: Emre Neftci
#
# Creation Date : Thu Nov  7 20:30:14 2019
# Last Modified :
#
# Copyright : (c) UC Regents, Emre Neftci
# Licence : GPLv2
#-----------------------------------------------------------------------------
from torchneuromorphic.doubledvssign.dvssign_dataloaders import *
from torchneuromorphic.utils import plot_frames_imshow
import matplotlib.pyplot as plt

if __name__ == "__main__":
    train_dl, test_dl = create_dataloader(root='data/ASL-DVS/dvssign.hdf5',
                                          batch_size=8,
                                          ds=1,
                                          chunk_size_train=100,
                                          chunk_size_test=100,
                                          num_workers=0)

    iter_meta_train = iter(train_dl)
    iter_meta_test = iter(test_dl)
    frames_train, labels_train = next(iter_meta_train)
    frames_test, labels_test = next(iter_meta_test)

    print(frames_train.shape)
    print(labels_train.shape)
    plot_frames_imshow(frames_train, labels_train, do1h=False, nim=4, avg=25)
    plt.savefig('dvssigns4.png')
    train_d = DVSGestureDataset(root,
                                train=True,
                                transform=transform_train,
                                target_transform=target_transform_train,
                                chunk_size=chunk_size_train)

    train_dl = torch.utils.data.DataLoader(train_d,
                                           batch_size=batch_size,
                                           shuffle=True,
                                           **dl_kwargs)

    test_d = DVSGestureDataset(root,
                               transform=transform_test,
                               target_transform=target_transform_test,
                               train=False,
                               chunk_size=chunk_size_test)

    test_dl = torch.utils.data.DataLoader(test_d,
                                          batch_size=batch_size,
                                          **dl_kwargs)

    return train_dl, test_dl


if __name__ == "__main__":
    train_dl, test_dl = create_dataloader(batch_size=32, num_workers=0)
    ho = iter(train_dl)
    frames, labels = next(ho)
    plot_frames_imshow(frames, labels)
示例#3
0
#-----------------------------------------------------------------------------
# File Name : test_aedat_legacy_timesurface.py
# Author: Emre Neftci
#
# Creation Date : Tue 16 Mar 2021 01:28:22 PM PDT
# Last Modified :
#
# Copyright : (c) UC Regents, Emre Neftci
# Licence : GPLv3
#-----------------------------------------------------------------------------
from torchneuromorphic.utils import plot_frames_imshow, legacy_aedat_to_events
import torchneuromorphic.transforms as transforms
import pylab as plt
import numpy as np
import sys

device = 'cuda'
events = legacy_aedat_to_events(sys.argv[1])
dt = 1000
size = [2, 346, 260]
process_events = transforms.Compose([
    transforms.Downsample(factor=[dt, 1, 1, 1]),
    transforms.ToCountFrame(T=1000, size=size),
    transforms.ToTensor(),
    transforms.ExpFilterEvents(tau=100, length=500, device=device)
])
frames = process_events(events)

plot_frames_imshow(np.array([frames.detach().cpu().numpy()]), nim=1)
plt.show()
示例#4
0
    
    iter_meta_train = iter(train_dl)
    iter_meta_valid = iter(valid_dl)
    iter_meta_test = iter(test_dl)
    
    # make sure can make it through all data
    for x, t in train_dl:
        print(t.shape)
        
    for x, t in valid_dl:
        print(t.shape)
        
    for x, t in test_dl:
        print(t.shape)
    
    frames_train, labels_train = next(iter_meta_train)
    frames_valid, labels_valid = next(iter_meta_valid)
    frames_test , labels_test  = next(iter_meta_test)
    
    with h5py.File(root, 'r', swmr=True, libver="latest") as f:
            if 1:
                keys = f['extra']['train_keys']
                print(keys)
            else:
                key = f['extra']['test_keys'][0]

    print(frames_train.shape)
    print(labels_train.shape)
    plot_frames_imshow(frames_test, labels_test, do1h=False, nim=4, avg=25)
    plt.savefig('nomniglot.png')