from SpykeTorch import utils from torchvision import transforms import struct import glob # In[14]: import SpykeTorch.utils as utils kernels = [ utils.GaborKernel(window_size=4, orientation=45 + 22.5), utils.GaborKernel(4, 90 + 22.5), utils.GaborKernel(4, 135 + 22.5), utils.GaborKernel(4, 180 + 22.5) ] filter = utils.Filter(kernels, use_abs=True) # In[15]: def time_dim(input): return input.unsqueeze(0) # In[16]: import matplotlib.pyplot as plt import random dataset = ImageFolder("dataset/eth") sample_idx = random.randint(0, len(dataset) - 1)
def preprocess(x, xtest): x = sample_zero_mean(x) x = gcn(x) xtest = sample_zero_mean(xtest) xtest = gcn(xtest) return x, xtest if __name__ == "__main__": # kernels = [ utils.DoGKernel(3,1,2), utils.DoGKernel(3,2,1), # utils.OnCenter(3), utils.OffCenter(3)] kernels = [utils.DoGKernel(3,1,2), utils.DoGKernel(3,2,1)] filter = utils.Filter(kernels, padding = 6, thresholds = 50) transform = InputTransform(filter) data_root = 'data/' MNIST_train = utils.CacheDataset(MNIST(root=data_root, train=True, download=True, transform=transform)) # 60000 x 30 x 30 MNIST_test = utils.CacheDataset(MNIST(root=data_root, train=True, download=True, transform=transform)) # 10000 x 30 MNIST_loader = DataLoader(MNIST_train, batch_size=1000, shuffle=True) MNIST_test_loader = DataLoader(MNIST_test, batch_size=1000, shuffle=False) net = CTNN() clf = svm.SVC()
if self.cnt % 1000 == 0: print(self.cnt) self.cnt += 1 image = self.to_tensor(image) * 255 image.unsqueeze_(0) image = self.filter(image) image = sf.local_normalization(image, 8) temporal_image = self.temporal_transform(image) return temporal_image.sign().byte() kernels = [ utils.DoGKernel(7, 1, 2), utils.DoGKernel(7, 2, 1), ] filter = utils.Filter(kernels, padding=3, thresholds=50, type="gray") s1 = S1Transform(filter) data_root = "data" # MNIST_train = utils.CacheDataset(torchvision.datasets.MNIST(root=data_root, train=True, download=True, transform=s1)) # print(type(MNIST_train)) MNIST_test = utils.CacheDataset(ImageFolder(root="demo", transform=s1)) # MNIST_test = utils.CacheDataset(torchvision.datasets.MNIST(root=data_root, train=False, download=True, transform=s1)) # MNIST_loader = DataLoader(MNIST_train, batch_size=len(MNIST_train), shuffle=False) MNIST_testLoader = DataLoader(MNIST_test, batch_size=len(MNIST_test), shuffle=False) kheradpisheh = KheradpishehMNIST() if use_cuda: