[32/64bit] cv::PCA のインスタンスを生成します
core_PCA_new2 p1,p2,p3,p4,p5
p1 = sptr : IntPtr data p2 = sptr : IntPtr mean p3 = int : int flags p4 = int : int maxComponents p5 = var : out IntPtr returnValue
(プラグイン / モジュール : OpenCvSharpExtern.dll)
主成分分析を行います。 このクラスは、ベクトルの集合に対する特別な基底を計算するために使用されます。基底は、入力されたベクトルの集合から計算された共分散行列の固有ベクトルで構成されます。PCA クラスは,基底によって定義された新しい座標空間との間で,ベクトルを変換することもできます.通常,この新しい座標系では,元の集合からの各ベクトル(およびそのようなベクトルの任意の線形結合)は,共分散行列の最大の固有値の固有ベクトルに対応する最初の数個の成分を取ることによって,非常に正確に近似することができます.幾何学的には、共分散行列の支配的な固有値に対応するいくつかの固有ベクトルによって形成される部分空間へのベクトルの投影を計算することを意味します。そして、通常、このような投影は、元のベクトルに非常に近いものになります。つまり、高次元空間の元のベクトルを、部分空間に投影されたベクトルの座標からなるずっと短いベクトルで表すことができるのです。このような変換は、Karhunen-Loeve変換(KLT)とも呼ばれます。http://en.wikipedia.org/wiki/Principal_component_analysis 参照 下のサンプルは,2つの行列を受け取る関数です.1つ目の関数は,PCAの計算に使用されるベクトルの集合(1つのベクトルにつき1行)を格納します.2つ目の関数は,もう1つの「テスト」用のベクトルセット(1つのベクトルにつき1行)を格納します.まず,これらのベクトルは PCA によって圧縮され,次に再構成されます.そして,再構成誤差ノルムが計算され,各ベクトルに対して出力されます. 元関数名(C#): core_PCA_new2 元DLLエクスポート名: core_PCA_new2 参照元CSファイル: Internal\PInvoke\NativeMethods\core\NativeMethods_core_Classes.cs ▼ C言語側関数定義
CVAPI(ExceptionStatus) core_PCA_new2(cv::_InputArray *data, cv::_InputArray *mean, int flags, int maxComponents, cv::PCA **returnValue) { BEGIN_WRAP *returnValue = new cv::PCA(*data, *mean, flags, maxComponents); END_WRAP }
プラグイン / モジュール | OpenCvSharpExtern.dll |
バージョン | 1.00 |
作成日 | 2021/11/30 |
著作者 | inovia |
URL | https://hsp.moe/ |
備考 | #include "OpenCvSharpExtern32.as"
#include "OpenCvSharpExtern64.as" 使用するHSPランタイムのビット数に合わせたインクルードファイルを使用すること |
タイプ | OpenCVSharpラッパーDLL |
グループ | NativeMethods_core_Classes |
対応環境 |
|
hs ファイル | hsphelp\OpenCvSharpExtern.hs |