Metadata-Version: 2.1
Name: vdataset
Version: 0.0.2
Summary: Load video datasets to PyTorch DataLoader
Home-page: https://github.com/nzx9/VDataset
Author: Navindu Dananga
Author-email: navindum@protonmail.com
License: MIT
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: pandas
Requires-Dist: Pillow
Requires-Dist: torch
Requires-Dist: torchvision

# VDataset

## Description

Load video datasets to PyTorch DataLoader. (Custom Video Data set for PyTorch DataLoader)
</br>
**VDataset can be use to load 20BN-Jester dataset to the PyTorch DataLoader**

## Required Libraries

* torch
* torchvision
* Pillow
* pandas

## Arguments for constructor

| Argument | Type | Required | Description|
|----------|------|----------|------------|
| csv_file  | str  | True     | Path to .csv file|
| root_dir | str  | True     | Root Directory of the video dataset|
| file_format| str | False    | File type of the frame images (ex: .jpg, .jpeg, .png)|
| id_col_name | str | False   | Column name, where id/name of the video on the .csv file|
| label_col_name | str | False | Column name, where label is on the .csv file |
| frames_limit_mode | str/None | False | Mode of the frame count detection ("manual", "csv" or else it auto detects all the frames available) |
| frames_limit | int | False | Number of frames in a video (required if frames_count_mode set to "manual") |
| frames_limit_col_name | str | False |Column name, where label is on the .csv file (required if frames_count_mode set to "csv") |
| frames_resize | tuple/None | False |        Resize the frames (Also this can be done on using transform too) |

## Usage

```python
from torch.utils.data import DataLoader
from torchvision import transforms

transforms = transforms.Compose([transforms.Resize((100, 100)),
                                       transforms.ToTensor()])

vdataset = VDataset(csv_file='path-to-csv-file.csv', root_dir='path-to-video-dir', transform=transforms)
dataloader = DataLoader(vdataset, batch_size=64) # use in DataLoader


for image, label in dataloader: # Do what do you want in dataset
    print(image, label)
    break

```


