1

OpenCV でパターン認識を学習しており、分類子を実装したいと考えています。

私が理解しているように、通常のアプローチは、すべての入力値に対してニューラル ネットワーク評価を実装し、決定を出力することです。現在、NN を学習することは私の精神的能力を超えてしまうのではないかと心配しており、より簡単な方法を探しています。

私の質問は、X がフィーチャクラスで Y がその値である入力値のヒストグラムを作成し、単純なヒストグラム比較を使用して決定を下すことは可能ですか? (色のヒストグラムが好きという意味ではありません。)

誰かがすでにそのような方法を適用しましたか? もしそうなら、結果はどのくらい正確でしたか?

ヒントをありがとう。

4

1 に答える 1

2

あなたが提案しているのは、確かに単層ニューラルネットワーク(単層パーセプトロン/線形分類子)に非常に似ています。画像に N 個の特徴があるとします。その場合、ニューラル ネットワークには N 個の入力があり、入力の値は、フィーチャが発生する回数またはフィーチャの値/強度になります。

クラス A と B が 2 つしかない場合、出力ノードは 1 つになります。各入力は重みで出力に接続されます。出力は、重み付けされたすべての出力の合計です。出力がしきい値を超えている場合、データはクラス A に分類できます。それ以外の場合はクラス B になります。データを正しく分類するには、ネットワークの重みを変更する必要があります (これは「トレーニング」と呼ばれます)。

さらに多くのクラスが必要な場合は、さらに出力ノードを追加できます。ただし、一部のデータを複数のクラスに分類できる場合があります。さらに、ネットワークは常に線形関数近似器になります。間にレイヤーを追加することで、ネットワークはより強力になります!

基本的なニューラル ネットワークは簡単です。ウィキペディアでそれについて読むのにもう少し時間を費やすことをお勧めします.

于 2012-11-18T23:01:02.547 に答える