2016-12-13 17 views
1

私は現在、顔認識のためのアプリケーションを開発中です。MatConvnetモデルウエイトの抽出

アルゴリズムは、MatConvnetライブラリ(http://www.vlfeat.org/matconvnet/)を使用して実装され、訓練されています。終わりに、私はそのように見えるネットワーク(.MATファイル)を持っている: enter image description here

enter image description here

私はそれがその.MATファイルを使用してネットワークの重みを抽出することが可能であったかどうかを知りたい

それらをXMLファイルに書き込んで、Caffe C++で読み込みます。私はCaffe C++でそれらを再利用していくつかのテストとハードウェアの実装を行いたいと思います。それを進めるための効率的で実践的な方法はありますか?

ご協力いただきありがとうございます。

答えて

1

matconvnetモデルを便利なCaffeモデルhereに変換する変換スクリプトがあります。

+0

ありがとうございます。それは私に多くの助けになりました:) –

2

パラメータを保存するレイヤーは、「貴重」として設定する必要があります。 net.varでは、パラメータにアクセスして書き込むことができます。

+0

あなたの答えに感謝h612! –

0

caffeのmatconvnetによる訓練されたネットワークの重みを使用することはできません。 matconvnetからcaffe(https://github.com/vlfeat/matconvnet/blob/4ce2871ec55f0d7deed1683eb5bd77a8a19a50cd/utils/import-caffe.py)にモデルをインポートするだけで済みます。しかし、このスクリプトはすべてのレイヤーをサポートしているわけではなく、使用するのが難しいかもしれません。 最良の方法は、pythonであなたのcaffe prototxtをmatconvnetモデルとして定義することです。

+0

すでに回答があるので、OPの問題は解決されました。 –