YOLOv5 でダンス動画やスプラトゥーンのようなゲームを物体検出するとどうなるか実験してみました。
YOLO
YOLOとは
「You Only Look Once」の略です。
YOLOは画像データからその画像データに写っている人や物・動物等々を検知して、その部分を矩形で囲い、それがなんであるかを教えてくれる技術です。
物体検出の準備
インストール
NVIDIAドライバインストール
$ wget https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda-reporhel7-11-1-local-11.1.1_455.32.00-1.x86_64.rpm $ sudo rpm -i cuda-repo-rhel7-11-1-local-11.1.1_455.32.00-1.x86_64.rpm $ sudo yum clean all $ sudo yum -y install nvidia-driver-latest-dkms cuda $ sudo yum -y install cuda-drivers
OpenCVインストール
gitクローンしてv3.4.3をチェックアウトする。
$ git clone https://github.com/opencv/opencv.git $ git clone https://github.com/opencv/opencv_contrib.git $ cd opencv_contrib $ git checkout -b 3.4.3 refs/tags/3.4.3 $ cd ../opencv/ $ git checkout -b 3.4.3 refs/tags/3.4.3
インストール
cmake -D CMAKE_BUILD_TYPE=Release \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D WITH_TBB=ON \ -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules .. make -j7 make install echo /usr/local/lib > /etc/ld.so.conf.d/opencv.conf ldconfig -v
バージョン確認
$ pkg-config --modversion opencv 3.4.3 $ opencv_version 3.4.3
YOLOv5インストール
以下のgithubを利用させていただきます。
github.com
$ git clone https://github.com/ultralytics/yolov5.git $ cd yolov5
追加ライブラリインストール
追加でライブラリをインストールします。
$ pip install PyHamcrest $ pip install -r requirements.txt --user
モデルファイルダウンロード
$ bash weights/download_weights.sh
動画準備
ダンス動画取得
むかし作成したダンス動画を取得します。
www.youtube.com
物体検出処理
ダンス
MMDで作ったダンス動画を変換します。
$ python detect.py --source /home/test/ダンス.avi
スプラトゥーン2
スプラトゥーン2の動画を変換します。
$ python detect.py --source /home/test/スプラトゥーン2.mp4
物体検出してみた
ダンス動画
MMD で作成したダンス動画で物体検出をしてみました。
【yolov5】ダンス動画で物体認識 #1
スプラトゥーン動画 #1
スプラトゥーンの動画で物体検出をしてみました。
【yolov5】スプラトゥーンの動画で物体認識 #2
スプラトゥーン動画 #2
スプラトゥーンの動画で物体検出をしてみました。
【yolov5】スプラトゥーンの動画で物体認識 #3