资源简介
用C++实现的lda和pca
代码片段和文件信息
# include
# include
# include
# include
# include
# include
using namespace Eigen;
using namespace std;
int main()
{
int m = 3;
int n = 5;
double dl[3][5] = { { 5 0 3 7 4} { 1 2 3 4 5 } { 1 2 4 6 2 } };
double data[3][5] = { 0 };
double datam[3] = { 0 };
double sb[3][3] = { 0 };
double sw[5][5] = { 0 };
double me[3] = {0};
double mu=0;
double meanb = 0;
double meanl = 0;
MatrixXf SW(5 5);
MatrixXf SW_1(5 5);
double *aMat = new double[25];
double covzo(double data_b[3][5] double data_a[3][5]double sw[5][5]);
int i jjj;
cout << “me“ << endl;
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
meanl = meanl + dl[i][j];
}
me[i] = meanl / n;//sw mean
cout << me[i] << ““;
meanb = meanb + meanl;
meanl = 0;
}
cout << endl;
mu = meanb / (n*m);//sb mean
cout << “data“ << endl;
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
data[i][j] = dl[i][j]-me[i];//substract mean
cout << data[i][j] << ““;
}
datam[i] = me[i] - mu;
cout << endl;
}
cout << “sb“ << endl;
for (j = 0; j < m; j++)
{
for (jj = 0; jj < m; jj++)
{
sb[j][jj] = datam[j] * datam[jj];
cout << sb[j][jj] << ““;
}
cout << endl;
}
cout << “sw“ << endl;
covzo(data datasw);
for (j = 0; j < n; j++)
{
for (jj = 0; jj < n; jj++)
{
cout << sw[j][jj] << “haha“;
aMat[j*n+jj] = sw[j][jj];
}
cout << endl;
}
Map dymMat(aMat 5 5);
cout << SW << endl;
SW_1=SW.reverse();
cout << “sw求逆:“ << endl<< SW_1 << endl;
system(“pause“);
return 0;
}
double covzo(double data_b[3][5] double data_a[3][5]double sw[5][5])
{//m类n维数据
double s[5][5] = { 0 } data_bt[5][3];
int i j jj k;
int n = 5;
int m = 3;
// double(*p)[5];
/*
p = new double*[n];
for (i = 0; i < n; i++)
{
p[i] = new double[n];
}
if (!*p)
{
cout << “error p“ << endl;
}
*/
cout << “data“ << endl;
for (k = 0; k < n; k++)
{
for (i = 0; i < m;i++)
{
data_bt[k][i] = data_b[i][k];
cout << data_bt[k][i] << ““ ;
}
cout << endl;
}
cout << “sw“ << endl;
for (j = 0; j < n; j++)
{
for (jj = 0; jj < n; jj++)
{
for (i = 0; i < m; i++)
{
sw[j][jj] += data_bt[j][i] * data_a[i][jj];
}
cout << sw[j][jj] << ““;
}
cout << endl;
}
// p = s1;
return (1);
}
/*
for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
for (jj = 0; jj < m; jj++)
{
s1[i][j] += data_bt[i][jj] * data_a[jj][j];
}
cout << s1[i][j] << ““;
}
cout << endl;
}
for (k = 0; k < n; k++)
{
for (i = 0; i < n; i++)
{
s[k][i] = s[k][i]+s1[k][i];
cout << s[k][i] << ““;
}
cout << endl;
}
*/
/*free(s1);
free(s);
free(data_bt);
free(i);
free(j);
free(jj);
free(k);
fre
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 396456 2017-03-26 17:53 PCAtest\Debug\ldaz.obj
文件 6524333 2017-03-31 11:11 PCAtest\Debug\LDA_Z.obj
文件 31668 2017-03-27 18:25 PCAtest\Debug\pca2.obj
文件 1667 2017-03-31 12:28 PCAtest\Debug\PCAtest.log
文件 4742 2017-03-31 12:28 PCAtest\Debug\PCAtest.tlog\cl.command.1.tlog
文件 189112 2017-03-31 12:28 PCAtest\Debug\PCAtest.tlog\CL.read.1.tlog
文件 7180 2017-03-31 12:28 PCAtest\Debug\PCAtest.tlog\CL.write.1.tlog
文件 3776 2017-03-31 12:28 PCAtest\Debug\PCAtest.tlog\li
文件 2852 2017-03-31 12:28 PCAtest\Debug\PCAtest.tlog\li
文件 606 2017-03-31 12:28 PCAtest\Debug\PCAtest.tlog\li
文件 188 2017-03-31 12:28 PCAtest\Debug\PCAtest.tlog\PCAtest.lastbuildstate
文件 6976660 2017-03-31 12:28 PCAtest\Debug\pcaz.obj
文件 356514 2017-03-30 21:15 PCAtest\Debug\PCA_Z.obj
文件 4402176 2017-03-31 12:28 PCAtest\Debug\vc120.idb
文件 26669056 2017-03-31 12:28 PCAtest\Debug\vc120.pdb
文件 3031 2017-03-26 17:52 PCAtest\ldaz.cpp
文件 5421 2017-03-27 22:31 PCAtest\LDA_Z.cpp
文件 3491 2017-03-31 12:02 PCAtest\PCAtest.vcxproj
文件 945 2017-03-31 12:02 PCAtest\PCAtest.vcxproj.filters
文件 165 2016-12-29 20:12 PCAtest\PCAtest.vcxproj.user
文件 4150 2017-03-31 12:28 PCAtest\pcaz.cpp
文件 1976 2017-03-30 21:15 PCAtest\PCA_Z.cpp
目录 0 2017-03-31 15:18 PCAtest\Debug\PCAtest.tlog
目录 0 2017-03-31 15:18 PCAtest\Debug
目录 0 2017-03-31 15:20 PCAtest
----------- --------- ---------- ----- ----
45586165 25
- 上一篇:计算机图形学源代码
- 下一篇:自己编写的音乐播放器,使用C++编写,支持可视化效果
相关资源
- 基于WinPcap的网络数据包捕获与分析源
- 基于WinPcap的网络扫描以及端口扫描流
- winPcap4.0.1以及程序员开发包Wpdpack
- 基于PCAN(ECAN)的ISO TP层API库
- 基于PCA和SVM的人脸识别系统
- 基于Visual C++的图像融合技术的研究与
- 基于winpcap网络嗅探器 VC++ 中科院课设
- MFCWinPcap编写一个嗅探器.zip
- 基于winPcap开发嗅探器c++,带界面
- 基于winpcap的ARP发送程序
- 基于WinpCap的MFC网络抓包程序
- 网络抓包winpcap版本C语言实现
- 基于winPcap的嗅探器源代码
- 基于winpcap网络协议编程
- PCA算法C语言描述
- winpcap抓包并进行协议解析
- 用 WinPCAP 监听并分析 FTP 协议并记录
- 基于LIBPCAP的网络流量实时采集与信息
- PCA融合算法C++代码
- PCA和KPCA的Matlab和C++程序
- 通过编程获取IP地址与MAC地址的对应关
- 基于WinPcap的网络流量统计
- 人脸识别svm+pcaopencv3
- LDA资源文档+matlab小例程
- ARP欺骗程序使用WinPcap
评论
共有 条评论