社区
图形处理/算法
帖子详情
如何求解特征值?
canisminor
2002-12-01 09:36:41
我用特征脸的方法作一个人脸识别的东东,需要求一个19*19的对称矩阵的特征值,请问各位大侠,有什么通用算法来求解这样的特征值?
小弟万分感谢!!!!
...全文
318
6
打赏
收藏
如何求解特征值?
我用特征脸的方法作一个人脸识别的东东,需要求一个19*19的对称矩阵的特征值,请问各位大侠,有什么通用算法来求解这样的特征值? 小弟万分感谢!!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
司马青衫依旧
2002-12-18
打赏
举报
回复
《矩阵理论》之类的书里都有。
你还可以改编一下Matlab中的源代码。
vcshox
2002-12-17
打赏
举报
回复
可以利用Jacobi方法:平面旋转矩阵所构成的正交相似变化把对称矩阵化为对角型。(C算法如下)
a:二维数组(n*n),只用到对角线以上的元素
n:阶数
d:输出参数,存放特征值
v:输出参数,存放特征向量
JACOBI(int n,double **a,double *d,double **v)
{
int p,q,i,j;
double sm,c,s,t,h,g,tau,theta,tresh,*b,*z;
b=(double *)calloc(n,sizeof(double));
if(b==NULL) ...
z=(double *)calloc(n,sizeof(double));
if(z==NULL) ...
for(p=1;p<=n;p++)
for(q=1;q<=n;q++)
{
if(p==q) v[p-1][q-1]=1.0;
else v[p-1][q-1]=0.0;
}
for(p=1;p<=n;p++)
{
b[p-1]=d[p-1]=a[p-1][p-1];
z[p-1]=0.0;
}
for(i=1;i<=50;i++)
{
sm=0.0;
for(p=1;p<=n-1;p++)
for(q=p+1;q<=n;q++)
sm=sm+fabs(a[p-1][q-1]);
if(sm==0.0)
{
free(b);
free(z);
return(1);
}
if(i<4) tresh=0.2*sm/(n*n);
else tresh=0.0;
for(p=1;p<n;p++)
for(q=p+1;q<=n;q++)
{
g=100*fabs(a[p-1][q-1]);
if(i>4&&(fabs(d[p-1])+g)==fabs(d[p-1])
&&(fabs(d[q-1]+g)==fabs(d[q-1]))
a[p-1][q-1]=0.0;
else
{
if(fabs(a[p-1][q-1])>tresh)
{
h=d[q-1]-d[p-1];
if((fabs(h)+g)==fabs(h)) t=a[p-1][q-1]/h;
else
{
theta=0.5*h/a[p-1][q-1];
t=1/(fabs(theta)+sqrt(1+theta*theta));
if(theta<0) t=-t;
}
c=1/sqrt(1+t*t);
s=t*c;
tau=s/(1+c);
h=t*a[p-1][q-1];
z[p-1]-=h;d[p-1]-=h;
z[q-1]+=h;d[q-1]+=h;
a[p-1][q-1]=0.0;
for(j=i;j<p;j++)
{
g=a[j-1][p-1];
h=a[j-1][q-1];
a[j-1][p-1]=g-s*(h+g*tau);
a[j-1][q-1]=h+s*(g-h*tau);
}
for(j=p+1;j<q;j++)
{
g=a[p-1][j-1];
h=a[j-1][q-1];
a[p-1][j-1]=g-s*(h+g*tau);
a[j-1][q-1]=h+s*(g-h*tau);
}
for(j=q+1;j<=n;j++)
{
g=a[p-1][j-1];
h=a[q-1][j-1];
a[p-1][j-1]=g-s*(h+g*tau);
a[q-1][j-1]=h+s*(g-h*tau);
}
for(j=1;j<=n;j++)
{
g=v[j-1][p-1];
h=v[j-1][q-1];
v[j-1][p-1]=g-s*(h+g*tau);
v[j-1][q-1]=h+s*(g-h*tau);
}
}
}
}
for(p=1;p<=n;p++)
{
d[p-1]=b[p-1]=b[p-1]+z[p-1];
z[p-1]=0;
}
}
free(b);
free(z);
return(1);
}
vfe
2002-12-15
打赏
举报
回复
用google搜救行了
otuotu
2002-12-15
打赏
举报
回复
帮你up一下
foxmail
2002-12-15
打赏
举报
回复
<计算方法》,《数值计算》上面有算法吧
xuefl66
2002-12-15
打赏
举报
回复
see
实对称矩阵的
特征值
求法_“绝境之下”,如何
求解
矩阵的
特征值
?
特征多项式
求解
一个矩阵的
特征值
应该是大家所要掌握的基本功,但是,相信很多同学发现,很多答案的解析,是列出来特征多项式,直接给出因式分解,然后,给出
特征值
。但是,从特征多项式到因式分解的这个过程有时候就...
怎么算
特征值
和特征矩阵?
怎样更通俗的理解
特征值
和特征矩阵?...此时叫做特征多项式,若特征多项式为0则称为A的特征方程(齐次线性方程组),
求解
特征值
的过程其实就是
求解
特征方程。
特征值
和特征矩阵的
求解
过程。 这里给出手解过程: ...
使用python
求解
特征值
与特征向量
使用python
求解
特征值
与特征向量 实例介绍
线性代数:如何求
特征值
和特征向量?
一、
特征值
和特征向量的定义 1 首先让我们来了解一下
特征值
和特征向量的定义,如下: 2 特征子空间基本定义,如下: END 二、特征多项式 1 特征多项式的定义,如下: 2 推论:...
matlab 求
特征值
的命令,matlab中
求解
特征值
方程函数eig
1 使用背景
求解
特征模理论的方程[X][I] = λ[R][I]2 基本用法标准
特征值
问题e = eig(A) 返回一个列向量,其中包含方阵 A 的
特征值
。用法:[V,D] = eig(A) 返回
特征值
的对角矩阵 D 和矩阵 V,其列是对应的右特征向量...
图形处理/算法
19,468
社区成员
50,698
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章