PCA降维
2024-08-27 18:27:17
http://blog.csdn.net/a784763307/article/details/17289317
这篇比较棒
openCV版
void PrintMatrix(CvMat *Matrix,int Rows,int Cols)
{
for(int i=;i<Rows;i++)
{
for(int j=;j<Cols;j++)
{
printf("%.2f ",cvGet2D(Matrix,i,j).val[]);
}
printf("\n");
}
}
int main()
{
float Coordinates[]={1.5,2.3,
3.0,1.7,
1.2,2.9,
2.1,2.2,
3.1,3.1,
1.3,2.7,
2.0,1.7,
1.0,2.0,
0.5,0.6,
1.0,0.9};
CvMat *Vector1;
CvMat *AvgVector;
CvMat *EigenValue_Row;
CvMat *EigenVector; Vector1=cvCreateMat(,,CV_32FC1);
cvSetData(Vector1,Coordinates,Vector1->step);
AvgVector=cvCreateMat(,,CV_32FC1);
EigenValue_Row=cvCreateMat(,,CV_32FC1);
EigenVector=cvCreateMat(,,CV_32FC1); cvCalcPCA(Vector1,AvgVector,EigenValue_Row,EigenVector,CV_PCA_DATA_AS_ROW); printf("Original Data:\n");
PrintMatrix(Vector1,,); printf("==========\n");
PrintMatrix(AvgVector,,); printf("\nEigne Value:\n");
PrintMatrix(EigenValue_Row,,); printf("\nEigne Vector:\n"); //每一行是一个特征向量。
PrintMatrix(EigenVector,,);
cout<<"******************************"<<endl; system("pause");
return ; }
最新文章
- Linux笔记:使用Vim编辑器
- 【软件使用】GitHub使用教程for Eclipse
- easyUI datagrid学习笔记
- LVS NAT模式
- Docker中的镜像分层技术详解
- Android应用增加计时器
- 转__Android Studio ,基于intellij idea
- CSS3 伪类选择器 :nth-child()
- 韦东山yy公开课笔记(2)--汇编,段,栈,重定位/链接地址,位置无关吗
- Python中 os._exit() sys.exit() exit()区别
- easyui treegrid实现显示checkbox并能获取到选定值的
- Alamofire源码解读系列(八)之安全策略(ServerTrustPolicy)
- 大数据处理架构hadoop
- Mapreduce入门和优化方案
- zabbix_get无法执行agent端的脚本文件解决办法
- c语言的fopen
- GNU Radio: Multiple USRP configurations 配置多个USRP设备
- UVA10859 Placing Lampposts
- 一键去除网页BOM属性【解决乱码,头部空白,&;#65279问题】
- 禁用Java JDK的自动更新
热门文章
- RPC学习--C#使用Thrift简介,C#客户端和Java服务端相互交互
- Android开发LogCat一直不停输出的解决方法
- Error:Protocol family unavailable
- [z]查找锁表并解锁
- 我 &;&; symfony3 (路由)
- Spring ioc容器
- 中国能用的NTP服务器地址
- ASP数组全集,多维数组和一维数组[转]
- Xamarin For Android 遇到错误java.exe exited with code 1. (msb6006)
- jsp:软件包 javax.servlet 不存在