2016-11-02 10 views
0

私は、セマンティックセグメンテーションに使用されるdeepLabネットワークを、2つのクラス、つまり手と背景のピクセル単位のラベルを持つ自分のデータでfinetuneしようとしています。私のグランドトゥルースセグメンテーションマップは、手のための1と背景の0を持つバイナリマップです。予期しないlabal '38' deepLabエラー

deeplab-largeFOVネットワークを21の代わりに2つの出力ラベル(PASCAL VOCで訓練したとき21)に変更し、それを実行しようとしました。それは何とか1から38までの私のラベルを変更し、次のエラーがスローされます。

F1101 20:47:22.904304 21648 seg_accuracy_layer.cpp:92] Unexpected label 38. num: 0. row: 3. col: 15 

私はそれが「interpの」層から地上真実にかかる印刷値を試してみましたが、何らかの理由で手のための私のラベルが変換されているようです誰かが私になぜそれが起こっているのか説明してもらえますか?

私は1週間以上でそれに固執しており、今は本当にfrsutratingです。どんな助力も高く評価されます。

ありがとうございます!

+0

それを稼働させましたか? –

+1

いいえ、seg_accuracy_layer.cppは依然として同じエラーをスローします。精度レイヤーを "SegAccuracy"から "Accuracy"に変更したところ、すべてが正常に機能していました。 – AUKhan

+0

@AUKhanあなたは私の一日を救った! –

答えて

0

精度レイヤーを "SegAccuracy"から "Accuracy"に変更すると、このエラーは消えてしまいます。

+0

注:これは2クラスのケースでのみ有効です。 – zanbri

+0

"SegAccuracy"レイヤーを標準の "精度"レイヤーに置き換えているので、2つ以上のクラスでも動作するはずです。この修正はクラス数に依存しません。 – AUKhan

関連する問題