Skip to main content

DVS-Gestures-Chain. Implementation of the dataset defined in "Spiking Neural Networks for event-based action recognition: A new task to understand their advantage"

Project description

DVS Gesture Chain

Official implementation of the dataset defined in Spiking Neural Networks for event-based action recognition: A new task to understand their advantage

Installation

From PyPI:

pip install dvsgc

From GitHub source code:

git clone https://github.com/VicenteAlex/DVS-Gesture-Chain.git
pip install requirements

Documentation

Just instantiate DVSGestureChain and run it as a torchvision.datasets.DatasetFolder:

Inherits from torchvision.datasets.DatasetFolder

CLASS dvsgc.DVSGestureChain(
            root, frames_number, split, validation=0.2, split_by='number', alpha_min=0.5, alpha_max=0.7, seq_len=4,
            class_num=3, repeat=True, dvsg_path=None, transform=None, target_transform=None)

Arguments:

  • root (str): root path of the dataset
  • frames_number (int): the integrated frame number
  • split (str): split from: ['train', 'validation', 'test']
  • validation (float): fraction of the training set to use for validation
  • split_by (str): time or number
  • alpha_min (float): lower bound for the gesture duration as a factor of its total duration
  • alpha_max (float): upper bound for the gesture duration as a factor of its total duration
  • seq_len (int): number of gestures in the chain
  • class_num (int): number of classes to use (up to 11)
  • repeat (bool): whether to allow repetition of the same gesture twice in a row
  • dvsg_path (str): If DVS-Gesture events are saved in another folder they can be retrieved by indicating the path here, else they will be created again in root
  • transform (Optional[Callable]): a function/transform that takes in a sample and returns a transformed version.
  • target_transform (Optional[Callable]): a function/transform that takes in the target and transforms it.

Usage:

Example:

train_set = dvsgc.DVSGestureChain(root=dataset_dir, split='train', frames_number=T)
train_loader = torch.utils.data.DataLoader(train_set, batch_size=N, shuffle=True, num_workers=4, pin_memory=True, drop_last=True)

validation_set = dvsgc.DVSGestureChain(root=dataset_dir, split='validation', frames_number=T)
validation_loader = torch.utils.data.DataLoader(validation_set, batch_size=N, shuffle=True, num_workers=4, pin_memory=True, drop_last=True)

Downloading the data:

DVS-GC requires to download the data from the original DVS-Gesture dataset, as this is not downloaded automatically, the first time the dataset is used the following message will appear: "This dataset can not be downloaded automatically, please download files manually and put files at root/download". Follow the instructions and download the DVS-Gesture files into that folder. Then re-run.

Saving memory:

The first time the dataset is used, the code will extract DVS-Gestures to the folder "extract", then build events from it in the folder "events_np" and then, from those events, create the frames for the DVS-GC dataset in a "DVSGC..." folder.

Once events_np is created, the extract folder and download folder are no longer necessary.

The "events_np" folder will be used every time a new DVS-GC dataset is created with different parameters. Alternatively, if an already existing DVS-GC dataset is used, "events_np" is not necessary.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dvsgc-0.1.2.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dvsgc-0.1.2-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file dvsgc-0.1.2.tar.gz.

File metadata

  • Download URL: dvsgc-0.1.2.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for dvsgc-0.1.2.tar.gz
Algorithm Hash digest
SHA256 4cbb2bc9434c23be9c20955ac4d2e29a437bf9026a5ee968d213e3f527b0ae67
MD5 33c7470061c2147cf8981211ed5fdfbb
BLAKE2b-256 6e9e2f514a08502baf97d6706f012a4811cafdb36805c11aadd6452b450c259f

See more details on using hashes here.

File details

Details for the file dvsgc-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: dvsgc-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for dvsgc-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fd3e5d6db13d5e800105e63f05947e574740caff0c00013a296ab447631af80d
MD5 21e4f9823317e9b57cbc8f5b0e34f23b
BLAKE2b-256 8d41a78faa9d5e2b332a3ff435b6451522658de56e2ee5e93d42b3d96c850566

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page