Caffe: サンプル画像でMNISTをテストする方法は?

作成日 2014年07月18日  ·  8コメント  ·  ソース: BVLC/caffe

私はCaffeの使用を開始することに焦点を当てたO'ReillyWebキャストに取り組んでいます。
http://www.oreilly.com/pub/e/3121

私の目標の1つは、自分の単純なネットワークをすばやくトレーニングする方法を人々に示すことです。そして、MNISTのトレーニングについて説明することができます。 難しい部分は、画像上で結果のネットワークを使用する方法を示すことです。

python / classifier.pyを変更して、人間が読める形式のスコアをオプションで出力するようにしました。これは、ビルド済みのImagenetで正常に使用できました。 しかし、同じことをMNISTで機能させるのは苦労しました。 シングルチャネルのグレースケール入力を処理できるように多くの変更を加えましたが、それでも実行可能な結果を​​得ることができません。 私が試した数字の画像の例は、ランダムな予測をもたらすように見えます。

これが私のフォークで、MNISTをサポートするためのPythonスクリプトの変更が含まれています。
https://github.com/jetpacapp/caffe

数字画像で予測を実行するには、次のコマンドを使用します。
python python/classify.py --print_results --model_def examples/mnist/lenet.prototxt --pretrained_model examples/mnist/lenet_iter_10000 --force_grayscale --center_only --labels_file data/mnist/mnist_words.txt data/mnist/sample_digit.png foo

入れた画像の数字に対応するラベルを見たかったのですが、実はかなり恣意的な結果になっているようです。

ユーザー提供の画像でMNISTをデモンストレーションするという私の目標を達成する方法について何かアイデアはありますか?

question

最も参考になるコメント

新しいユーザーがこの作業を完了するのは難しいです。

私はそれをしました、これをチェックアウトしてください//github.com/9crk/caffe-mnist-test

全てのコメント8件

比較するために、グレースケール処理の開発における変更を見るかもしれません
あなたの仕事に対して。

できればあなたのフォークを一瞥します-私が知っているようにあなたの努力を続けてください
手書きとシーンテキスト認識に取り組んでいるグループがあり、
成功した他の強度画像データ。

ルは18 juilletの2014年、ピート・ウォーデンヴァンドルディ[email protected] Aを
écrit:

私はCaffeの使用を開始することに焦点を当てたO'ReillyWebキャストに取り組んでいます。
http://www.oreilly.com/pub/e/3121

私の目標の1つは、自分のシンプルなトレーニングをすばやく行う方法を人々に示すことです。
ネットワーク、そして私は彼らにMNISTのトレーニングを案内することができます。 難しい部分は
結果のネットワークを画像で使用する方法を示します。

オプションで人間が読める形式で出力するようにpython / classifier.pyを変更しました
ビルド済みで正常に使用できたスコア
Imagenet。 同じことをMNISTで機能させるのは苦労しました
しかし。 シングルチャネルを処理できるように、たくさんの変更を加えました
グレースケール入力ですが、それでも実行可能な結果を​​得ることができません。 数字の例
私が試した画像は、ランダムな予測をもたらすように見えます。

これが私のフォークで、サポートするPythonスクリプトの変更が含まれています
MNIST:
https://github.com/jetpacapp/caffe

数字画像で予測を実行するには、次のコマンドを使用します。
python python / classify.py --print_results --model_def
examples / mnist / lenet.prototxt --pretrained_model
examples / mnist / lenet_iter_10000 --force_grayscale --center_only
--labels_file data / mnist / mnist_words.txt data / mnist / sample_digit.png foo

私が置いた画像の数字に対応するラベルを見たいと思っていました
で、しかし実際にはかなり恣意的な結果が見られるようです。

MNISTをデモンストレーションするという私の目標を達成する方法に関するアイデア
ユーザー提供の画像?


このメールに直接返信するか、GitHubで表示してください
https://github.com/BVLC/caffe/issues/729。

エヴァン・シェルハマー

さらに深く掘り下げた後、問題はデフォルトの画像サイズ256x256でした。これは、MNISTが28x28にトリミングされるため、各画像の中心のみが分析されていたためです。 それを理解すると、フォークのこの変更されたコマンドラインで正しい結果を得ることができました:

python python/classify.py --print_results --model_def examples/mnist/lenet.prototxt --pretrained_model examples/mnist/lenet_iter_10000 --force_grayscale --center_only --labels_file data/mnist/mnist_words.txt --images_dim 28,28 data/mnist/sample_digit.png foo

私の変更により、python / classify.pyがImagenetだけでなくMNISTでも機能するように見えるので、フォークからのプルリクエストをまとめます。 それらをメインプロジェクトに含めることは、チュートリアルの大きな助けになります。そうすれば、フォークをいじくり回すのではなく、ここで人々を導くことができます。

プルリクエストを#735として追加しました。

グレースケール入力と人間が読める形式の出力のために、Caffeウェビナーとclassify.pyの拡張機能を開催していただきありがとうございます。 これは#816が#735を引き継ぐことによって実行されるため、終了します。

python python / classify.py --print_results --model_def examples / mnist / lenet.prototxt --pretrained_model examples / mnist / lenet_iter_10000 --force_grayscale --center_only --labels_file data / mnist / mnist_words.txt --images_dim 28,28 data /mnist/sample_digit.png foo
パスでこのfooは何ですか?

I have trained and tested my image datasets using Caffe, and the data in val.txt is the ground truth.    
But, how can I calculate the precision and recall by the ground truth and prediction values?

または、「python / classify.py」から適合率と再現率を取得できますか?
plsは私にいくつかの提案を与え、いくつかのPythonコードをお勧めしますか?

あなたが提案したコマンドを実行しようとしましたが、次のようなエラーが発生します
例外:チャネルスワップは、入力チャネルと同じ数の次元を持つ必要があります。 --force_graysclaleとしてRGB画像を入力として渡していますが、その画像を単一のチャネルに変換する必要がありますが、それを実行しているようです。 他の選択肢を提案できますか?

新しいユーザーがこの作業を完了するのは難しいです。

私はそれをしました、これをチェックアウトしてください//github.com/9crk/caffe-mnist-test

このページは役に立ちましたか?
0 / 5 - 0 評価