0
これはおそらく単純な作業ですが、C++でopencvを初めて使用して以来、どのように処理するのかは不明です。PCAのためのopencv画像を整形する
私はthis codeからインスピレーションを受けました。
私は考えていたアイデアは、単一の画像を取って、RGB強度でPCAを行い、RGBデータの投影をグレースケールの3つの主成分に視覚化することでした。
私が最初に遭遇する問題は、PCA用のマトリックスを設定する方法です。これまでのコードは、これまで通りです。
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
// Open another image
Mat image, imageMat;
image= imread("images/0.jpg");
imageMat = convertForPCA(image);
// Do pca and visualize channels in grayscale.
// ...
return 0;
}
convertForPCA機能の実装を手伝ってください。この関数は、イメージ行列を取り込み、nを3の浮動行列で返します。ここで、nは元のイメージのピクセル数です。
私は残りの部分を進めることができると思いますが、私が立ち往生して答えを見つけることができない場合は、さらに質問を投稿します。