1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

TensorflowでYOLOv2を動かす

Posted at

はじめに

先行研究(DeepStyle: Multimodal Search Engine for Fashion and Interior Design)の環境を再現するために物体検出モデルであるYOLOv2を動かしてみました.
darkflowではYOLOv3を対応していないみたいなので,darkflowユーザーの方に見ていただけると幸いです.

実行環境

  • Ubuntu:16.04
  • GPU:Quadro P5000
  • CUDA:8.0
  • cuDNN:6.0
  • Tensorflow-gpu:1.4.0
  • Python:3.6

tensorflow-gpuはCUDA, cuDNNと互換性があるので,以下のサイトで自分の環境にあったバージョンをインストールしてください.
https://www.tensorflow.org/install/source#common_installation_problems

darkflowインストール手順

  1. githubからdarkflowをクローンする.

  2. binディレクトリを作成し,binディレクトリにyoloのweightをダウンロードする.
    wget https://pjreddie.com/media/files/yolov2.weights

  3. darkflowをインストールする.
    darkflowディレクトリで実行↓
    python3 setup.py build_ext --inplace
    pip3 install -e .
    pip3 install .

サンプルプログラム実行

READMEの”Using darkflow from another python application”に書かれているプログラムを動かしてみます.
thresholdは

コード

[test.py]

from darkflow.net.build import TFNet
import cv2

options = {"model": "cfg/yolo.cfg", "load": "bin/yolov2.weights", "threshold": 0.4, "gpu": 0.3}

tfnet = TFNet(options)

imgcv = cv2.imread("./sample_img/sample_dog.jpg")
result = tfnet.return_predict(imgcv)
print(result)

実行

python3 test.py

結果

sample_img/out/配下に検出結果が保存される.
dog.png

パラメータ

test.pyのパラメータ(options部分)について説明します.

  • load:ダウンロードしていたweightsファイルを指定
  • threshold:検出結果の閾値.高くすると評価の高い物体のみが出力される.
  • gpu:gpuの使用率

まとめ

darkflowを用いてYOLOv2を動かしてみました!
KerasでYOLOv3を動かすのが主流となっているので,需要があるのかわかりませんが,
先行研究の環境再現などの際に参考にしていただけると嬉しいです!
次は矩形内の物体画像切り抜きについて記事を書きたいと思います!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?