ChainerにCaffeモデルを読み込ませてテストするまで(Ubuntu16.04)


タイトルにある通りです.

初めはCaffeでやろうとするも,
Ubuntu16.04のprotobuf周りのせいで雲行きが怪しくなったので,
今回はChainerにCaffeモデルを読み込ませてテストしてみようって感じです.

 
① Chainerをインストールする

今回はネットワークを云々したい訳ではないので,
CPUでの利用を考えています.
したがって,Chainerのインストールはコマンド一発です!
GPUで使いたい場合は,こちらこちらを参考にしてください.

 
② Caffeモデルの準備

次に,Chainerに読み込ませるCaffeモデルの準備をします.
今回はGoogleNetのbvlc_googlenetを利用しています.
1000個のカテゴリーに分類することができます.

こちらにある,caffemodel_urlのリンクからダウンロードしてください.
解凍したら,synset_words.txtを加工してラベルファイルを生成します.
ラベルファイル生成は,以下のコマンドを実行.
これで,labels.txtにラベルが保存されます.

“crane”という行が2つあってまぎらわしいので,
135行目を”crane(bird)”に,
518行目を”crane(machine)”に変更しておくと良いとのことです.

 
③ テスト画像をChainerへの入力形式に変更

以下のプログラムでテスト画像をChainerの入力形式に変換します.
Chainerの入力形式は[画像インデックス,BGR, Y座標, X座標]なので,
テスト画像をその形式に変換しています.
画像サイズは定義したサイズに変換しますが,
画像中のオブジェクトが歪まないように変形しています.
画像インデックスはテスト画像の枚数分指定しています.


  ④ Caffeモデルを読み込む

以下のプログラムで,Caffeモデルを読み込みます.
caffemodelのパスは各自の環境に合わせて定義してください.

 
⑤ 予測させる

最後に以下で予測させます.
試しに以下のキジムナーの画像をテストしてみた結果です. L3552320001722752
 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です