YOLOのfpsが低下したときの対処法

2024年10月17日

こんにちは。M1の落合です。 今回は、YOLOのfpsが低下したときの対処法の一つである「GPUの導入」について紹介します。 (先生に直していただいただけで、自分は何もしていませんが...)

今回紹介する方法は、Ubuntu PCにdarknet_ros, NVIDIA Driver, CUDA, cuDNNがすでにインストールされていることを前提としています。

以前は問題なくdarknet_rosが動作していたのですが、突然fpsが下がり重くなってしまいました。 そこで、nvidia-smiを実行したところ

img

と表示され、darknet_rosの実行中でもそれらしき表示はありません。 なぜかGPUを使用しない設定になっていたようです。 これを解決するために、catkin_ws/src/darknet_ros/darknet/Makefileを以下のように変更します。

GPU=1
CUDNN=1

元はそれぞれの値が0になっていると思います。 その後、catkin_ws/buildやcatkin_ws/devel内にあるdarknet_ros関連と思われるフォルダやファイルを削除し、catkin_makeで改めてビルドします。 これで、GPUを使用してdarknet_rosを実行できるようになると思います。

この状態で再度nvidia-smiを実行すると

img

と表示され、無事にdarknet_rosがGPUを使用していることが確認できます。 さらに、darknet_rosを起動してみると

img

このようにfpsが上がり、以前のようにスムーズに動作するようになりました。

(参考にしたサイト:https://tomson784.github.io/ros_practice/yolo/install.html)