2017年11月20日月曜日

OpenCV の dnn でレイヤー名を取得した。

はじめに

今回、レーヤーのクラス名を取得する getLayerNames() を試してみた。

関数の説明は、 ここ

サンプルソースの修正

caffe_googlenet.cpp の readNetFromCaffe のあとに、

    std::vector<String> lname = net.getLayerNames();
    for (int i = 0; i < lname.size();i++) {
        std::cout << i+1 << " " << lname[i] << std::endl;
    }

を追加。

ビルドして、実行すると

 ./caffe_googlenet
1 conv1/7x7_s2
2 conv1/relu_7x7
3 pool1/3x3_s2
4 pool1/norm1
5 conv2/3x3_reduce
6 conv2/relu_3x3_reduce
7 conv2/3x3
8 conv2/relu_3x3
9 conv2/norm2
10 pool2/3x3_s2



140 pool5/drop_7x7_s1
141 loss3/classifier
142 prob

Best class: #812 'space shuttle'
Probability: 99.9935%
Time: 23.7494 ms (average from 10 iterations)

のような表示となる。

以上

0 件のコメント:

コメントを投稿