問題タブ [principal-components]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
938 参照

opencv - 回転不変文字認識のために OpenCV で PCA を使用する

現在、プログラムの一部としてタグの周囲で抽出した 8 ビット マトリックスに基づいて文字を識別しようとしています (このマトリックスを「tag_character」と呼び、「D」文字のサンプル イメージを以下に示します)。 )。

ここに画像の説明を入力

分類は回転に対して不変である必要があるため、可能性のある手法として PCA を推奨してもらいましたが、使用方法に少し問題があります。作業コードは以下のとおりです。

位置を取得したので、これを使用して実際に各タグを一意に識別する方法がわかりません。ちなみに、各輪郭をループして分類しているので、PCA はタグごとに個別に実行されています。

0 投票する
2 に答える
351 参照

r - 「プリンシパル」を使った主成分分析

principal()パッケージの関数を使用してpsych、R で SPSS 主成分分析の結果を複製しています。 -まだ-pca )

以下のコードを使用しています。

しかし、次のエラーが発生します。

アドバイスをいただければ幸いです。私のデータのサンプル ( by dput(ws)) を以下に添付します。どうもありがとう!

0 投票する
0 に答える
2335 参照

opencv - 主成分分析 (PCA) を使用した機能削減 (HOG-PCA)

順序付き勾配のヒストグラム(HoG) を使用して、15 個のサンプル画像の特徴を計算しました。これらのサンプルによって生成された特徴ベクトルは非常に大きくなります (つまり、多くのメモリを占有します)。

これらの特徴ベクトルを削減するために、主成分分析(PCA) を使用しています。私が使用しているOpenCVコードは次のとおりです。

imageT Matrix では、行数 = no. サンプルNo. 列数 = いいえ。特徴量 15 枚の画像
の場合、imageT の行番号が 15 で、番号が 15 であるとします。列数は 57400 です

PCA を適用した後、300 個の機能が必要です。それは私に15未満の機能を与えます。私は助けが必要です。

こちらもご覧ください

0 投票する
2 に答える
1273 参照

matlab - 手書き数字認識のための最初のいくつかの PCA コンポーネントの解釈

そのため、Matlab では手書きの数字に対して PCA を実行します。基本的に、私は 30*30 次元の写真、つまり 900 ピクセルを持っており、PCA の後で分散の大部分を捉える成分、つまりいくつかのしきい値に基づく最初の 80 の主成分 (PC) を検討します。現在、これらの 80 個の PC も 900 次元であり、imshow を使用してこれらをプロットすると、0、6、3、5 などのような画像が得られます。これらの最初のいくつかの PC の解釈は何ですか (out私が抽出した80のうち)?

0 投票する
1 に答える
1297 参照

matlab - Matlab の主成分分析 (PCA) を使用した主成分の計算とプロット

イメージがあります。画像の分散が最小になる軸を特定する必要があります。少し読んで検索した結果、主成分分析 (PCA) が最良の代替手段であるという結論に達しました。主軸に対して画像の向きを変えるのを手伝ってくれる人はいますか? 私は最近matlabを紹介されたので、少し難しいと思います。画像の例を以下に示します。ヒストグラムを生成できるように画像を回転させようとしています。

ここに画像の説明を入力

私はまだ PCA を使用していません。私の現在のコードは次のとおりです。

0 投票する
1 に答える
2620 参照

python - sklearn と panda を使用した主成分分析

ここの PCA チュートリアル ( PCA-tutorial )の結果を再現しようとしましたが、いくつかの問題があります。

  1. 私が理解していることから、PCAを適用する手順に従っているはずです。しかし、私の結果はチュートリアルの結果と似ていません (または、似ていて正しく解釈できませんか?)。n_components=4 を使用すると、次のグラフn_components4が得られます。おそらくどこかで何かが欠けているので、これまでのコードも追加しました。

  2. 私の2番目の問題は、グラフ内のポイントに注釈を付けることです。ラベルがあり、各ポイントに対応するラベルを取得したいです。私はいくつかのことを試しましたが、これまでのところ成功していません。

データセットも追加し、CSV として保存しました。

,チーズ,枝肉,その他の肉類,魚介類,油脂,砂糖,生じゃがいも,生野菜,その他の野菜,じゃがいも加工品,加工野菜,生果実,穀類,飲料,清涼飲料,酒類,菓子類 イングランド,105,245,685,147,193,156,720,253,488,198,360, 1102,1472,57,1374,375,54 Wales,103,227,803,160,235,175,874,265,570,203,365,1137,1582,73,1256,475,64 Scotland,103,242,750,122,184,147,566,171,418,220,337,957,1462,53,1572,458,62 NIreland,66,267,586,93,209,139,1033,143,355,187,334,674,1494 ,47,1506,135,41

では、これらの問題のいずれかについて何か考えはありますか?

`

`

0 投票する
1 に答える
237 参照

opencv - OpenCV主成分分析の用語 - 「サンプル」とは実際には何ですか?

openCV で主成分分析 ( PCA ) を使用しています。私が興味を持っているケースのコンストラクター入力は次のとおりです。

InputArray の「データ」に関して、ドキュメントには適切なフラグを次のように指定する必要があると記載されています。

CV_PCA_DATA_AS_ROWは、入力サンプルが行列の行として格納されていることを示します。 CV_PCA_DATA_AS_COLは、入力サンプルが行列列として格納されていることを示します。

私の質問は、「サンプル」という用語の使用に関するもので、この文脈におけるサンプルとは何かがわかりません。

たとえば、4セットのデータがあり、説明のためにそれらを AD とラベル付けするとします。これで、A から D までの各セットに8 つの要素が含まれます。これらは、次のように InputArray として使用する Mat 変数に設定されます。

ここに画像の説明を入力

問題は、それは次のとおりです。

  • 私のセットはサンプルですか?
  • 私のデータ要素はサンプルですか?

別の尋ね方:

  • 4 つのサンプルがありますか (CV_PCA_DATA_AS_COL)
  • または、8 つのサンプル (CV_PCA_DATA_AS_ROW) を 4 セット持っていますか?

?

推測として、私はCV_PCA_DATA_AS_COLを選択します (つまり、4 つのサンプルがあります) - しかし、それは私の頭がどこにあるのかということです... 正しい用語を学ぶまでは、「サンプル」という言葉はどちらの推論にも当てはまるようです。