video classification 3d cnn pytorch
1.0.0
これは、このコードでトレーニングされた3D ResNetを使用したビデオ(アクション)分類用のPytorchコードです。
3D ResNetは、400のアクションクラスを含む速度論データセットでトレーニングされています。
このコードは、ビデオを入力として使用し、クラス名を出力し、スコアモードの16フレームごとにクラススコアを予測します。
機能モードでは、このコードは、16フレームごとに512 DIM(グローバル平均プーリング後)の機能を出力します。
このコードのTorch(LUA)バージョンはこちらから入手できます。
conda install pytorch torchvision cuda80 -c soumith
wget http://johnvansickle.com/ffmpeg/releases/ffmpeg-release-64bit-static.tar.xz
tar xvf ffmpeg-release-64bit-static.tar.xz
cd ./ffmpeg-3.3.3-64bit-static/; sudo cp ffmpeg ffprobe /usr/local/bin;
入力ビデオファイルが./videosにあると仮定します。
16フレームごとにクラススコアを計算するには、 --mode scoreを使用します。
python main.py --input ./input --video_root ./videos --output ./output.json --model ./resnet-34-kinetics.pth --mode score
分類結果を視覚化するには、 generate_result_video/generate_result_video.pyを使用します。
16フレームごとにビデオ機能を計算するには、 --mode featureを使用します。
python main.py --input ./input --video_root ./videos --output ./output.json --model ./resnet-34-kinetics.pth --mode feature
このコードを使用する場合は、以下を引用してください。
@article{hara3dcnns,
author={Kensho Hara and Hirokatsu Kataoka and Yutaka Satoh},
title={Can Spatiotemporal 3D CNNs Retrace the History of 2D CNNs and ImageNet?},
journal={arXiv preprint},
volume={arXiv:1711.09577},
year={2017},
}