v1.1.0
This release bring convenience integrations to make
simple tasks such as extracting video features easy.
Changes
-
nvidia-docker based GPU Docker integration; we can
run self-contained reproducible images on GPUs now -
Provides 8 and 32 frame models and weights trained
on IG65M and optionally fine-tuned on Kinetics-400:
r2plus1d_34_32_ig65m
,r2plus1d_34_32_kinetics
,
r2plus1d_34_8_ig65m
,r2plus1d_34_8_kinetics
-
Adds Travis CI/CD integration for integration tests
-
Adds Docker registry integration allowing Travis to
build and push pre-built Docker images on success -
Upgrades to latest PyTorch 1.3 and torchvision 0.4.1
-
Provides easy to use video feature extraction tool
-
Provides semcode tool visualizing features over time
PyTorch Hub integration can be used from code as follows:
>>> import torch
>>>
>>> torch.hub.list("moabitcoin/ig65m-pytorch")
['r2plus1d_34_32_ig65m', 'r2plus1d_34_32_kinetics', 'r2plus1d_34_8_ig65m', 'r2plus1d_34_8_kinetics']
>>>
>>> model = torch.hub.load("moabitcoin/ig65m-pytorch", "r2plus1d_34_32_ig65m", num_classes=359, pretrained=True)
Pre-build Docker images for CPUs and GPUs (see all tags) can be used as follows:
docker run moabitcoin/ig65m-pytorch:latest-cpu --help
docker run --ipc=host -v $PWD:/data moabitcoin/ig65m-pytorch:latest-gpu \
extract /data/myvideo.mp4 /data/myfeatures.npy
docker run --runtime=nvidia --ipc=host -v $PWD:/data moabitcoin/ig65m-pytorch:latest-gpu \
extract /data/myvideo.mp4 /data/myfeatures.npy
🐌 Running on CPU(s)
100%|███████████████████████████████████████████████████████████| 2/2 [00:16<00:00, 8.27s/it]
🍪 Done
extract: video feature extraction running in 🐌-mode on my year 2015 laptop
semcode: visualizing clip features over time for the Primer movie trailer; time goes top to bottom
Please provide feedback (good or bad 🍪) by means of opening issues or pull requests.
Done by the lovely folks from Berlin
Thanks and happy hacking!