FC2カウンター FPGAの部屋 2018年04月16日

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

darknet で画像認識をやってみる1(ImageNet Classification)

4月7日の”組込みDL 体験コース”は面白かった。パソナテックさんありがとうございました。層構成のレポートがわかるようになったし、とても参考になった。
しかし、テキストがYOLOv3 以前のdarknet で書かれているので、サイトが変わってしまったようだ。重みをダウンロードしようとしたらできなかった。
今回は、darknet の Classification(画像認識)をやってみようと思う。

darknet の ImageNet Classification をやってみよう。
まずは、重み(extraction.weights)をダウンロードしよう。
wget https://pjreddie.com/media/files/extraction.weights
YOLOv3_30_180416.png

コアダンプされたが、extraction.weights はダウンロードできているようだ。
実行してみよう。実行するときに detect ではなく、classifier を指定すれば良いようだ。
./darknet classifier predict cfg/imagenet1k.data cfg/extraction.cfg extraction.weights data/dog.jpg
YOLOv3_31_180416.png

masaaki@masaaki-H110M4-M01:~/DNN/darknet$ ./darknet classifier predict cfg/imagenet1k.data cfg/extraction.cfg extraction.weights data/dog.jpg
layer     filters    size              input                output
    0 conv     64  7 x 7 / 2   224 x 224 x   3   ->   112 x 112 x  64  0.236 BFLOPs
    1 max          2 x 2 / 2   112 x 112 x  64   ->    56 x  56 x  64
    2 conv    192  3 x 3 / 1    56 x  56 x  64   ->    56 x  56 x 192  0.694 BFLOPs
    3 max          2 x 2 / 2    56 x  56 x 192   ->    28 x  28 x 192
    4 conv    128  1 x 1 / 1    28 x  28 x 192   ->    28 x  28 x 128  0.039 BFLOPs
    5 conv    256  3 x 3 / 1    28 x  28 x 128   ->    28 x  28 x 256  0.462 BFLOPs
    6 conv    256  1 x 1 / 1    28 x  28 x 256   ->    28 x  28 x 256  0.103 BFLOPs
    7 conv    512  3 x 3 / 1    28 x  28 x 256   ->    28 x  28 x 512  1.850 BFLOPs
    8 max          2 x 2 / 2    28 x  28 x 512   ->    14 x  14 x 512
    9 conv    256  1 x 1 / 1    14 x  14 x 512   ->    14 x  14 x 256  0.051 BFLOPs
   10 conv    512  3 x 3 / 1    14 x  14 x 256   ->    14 x  14 x 512  0.462 BFLOPs
   11 conv    256  1 x 1 / 1    14 x  14 x 512   ->    14 x  14 x 256  0.051 BFLOPs
   12 conv    512  3 x 3 / 1    14 x  14 x 256   ->    14 x  14 x 512  0.462 BFLOPs
   13 conv    256  1 x 1 / 1    14 x  14 x 512   ->    14 x  14 x 256  0.051 BFLOPs
   14 conv    512  3 x 3 / 1    14 x  14 x 256   ->    14 x  14 x 512  0.462 BFLOPs
   15 conv    256  1 x 1 / 1    14 x  14 x 512   ->    14 x  14 x 256  0.051 BFLOPs
   16 conv    512  3 x 3 / 1    14 x  14 x 256   ->    14 x  14 x 512  0.462 BFLOPs
   17 conv    512  1 x 1 / 1    14 x  14 x 512   ->    14 x  14 x 512  0.103 BFLOPs
   18 conv   1024  3 x 3 / 1    14 x  14 x 512   ->    14 x  14 x1024  1.850 BFLOPs
   19 max          2 x 2 / 2    14 x  14 x1024   ->     7 x   7 x1024
   20 conv    512  1 x 1 / 1     7 x   7 x1024   ->     7 x   7 x 512  0.051 BFLOPs
   21 conv   1024  3 x 3 / 1     7 x   7 x 512   ->     7 x   7 x1024  0.462 BFLOPs
   22 conv    512  1 x 1 / 1     7 x   7 x1024   ->     7 x   7 x 512  0.051 BFLOPs
   23 conv   1024  3 x 3 / 1     7 x   7 x 512   ->     7 x   7 x1024  0.462 BFLOPs
   24 conv   1000  1 x 1 / 1     7 x   7 x1024   ->     7 x   7 x1000  0.100 BFLOPs
   25 avg                        7 x   7 x1000   ->  1000
   26 softmax                                        1000
   27 cost                                           1000
Loading weights from extraction.weights...Done!
data/dog.jpg: Predicted in 2.876122 seconds.
12.77%: malamute
10.03%: Siberian husky
 7.23%: Eskimo dog
 4.91%: miniature schnauzer
 4.88%: Afghan hound


一番確率の高いのは malamute で犬の一種のようだ。
darknet から dog.jpg の画像を引用する。
YOLOv3_35_180416.jpg

次に data/eagle.jpg をやってみよう。
./darknet classifier predict cfg/imagenet1k.data cfg/extraction.cfg extraction.weights data/eagle.jpg
YOLOv3_33_180416.png

Loading weights from extraction.weights...Done!
data/eagle.jpg: Predicted in 2.890507 seconds.
61.74%: bald eagle
36.86%: kite
0.48%: vulture
0.19%: ptarmigan
0.14%: hen


一番確率の高いのは、bald eagle でハクトウワシだそうだ。
eagle.jpg をdarknet から引用する。
YOLOv3_36_180416.jpg

最後に giraffe.jpg をやってみる。
giraffe.jpg を darknet から引用する。
YOLOv3_37_180416.jpg

キリンとシマウマが1頭ずついるので、何を認識するか興味のあるところだ。
./darknet classifier predict cfg/imagenet1k.data cfg/extraction.cfg extraction.weights data/giraffe.jpg
YOLOv3_34_180416.png

Loading weights from extraction.weights...Done!
data/giraffe.jpg: Predicted in 2.897918 seconds.
28.03%: zebra
14.40%: bustard
11.90%: gazelle
6.38%: cheetah
5.97%: impala


シマウマが認識されているがキリンは項目が見当たらない。
  1. 2018年04月16日 05:36 |
  2. DNN
  3. | トラックバック:0
  4. | コメント:0