matlab的问题,高手请进!

用matlab实现:
1.矩阵A=[1 1 1 1 1;1 2 3 4 5; 1 3 6 10 15;1 4 10 20 35;1 5 15 35 69],A=L*L'(L'表示L的转置),求L.

2.导入一张bmp图片,利用svd,将其转化为jpg.

谢谢

1.
对于正定阵用L=chol(A)就可以了,
你给的矩阵是非正定的,差别在最后一个元素,多数例子上给的都是70,你给的是69.
需要新的算法才行.
幸好所给矩阵是半正定的,下面的程序可以用于对半正定矩阵进行Cholesky分解:
clear
A=[1 1 1 1 1
1 2 3 4 5
1 3 6 10 15
1 4 10 20 35
1 5 15 35 69];
for i=1:5
for j=1:i
if j<i
if j==1
b=0;
else b=sum(L(i,1:j-1).*(L(j,1:j-1)));
end
L(i,j)=(A(i,j)-b)/L(j,j);
else
if j==1
d=0;
else d=sum(L(i,1:j-1).^2);
end
L(i,j)=(A(i,i)-d)^(1/2);
end
end
end
L

2.
clear
OriName='1.bmp';A=double(imread(OriName));
R=A(:,:,1);G=A(:,:,2);B=A(:,:,3);
[U11,S1,V111] = svd(R);[U22,S2,V222] = svd(G);[U33,S3,V333] = svd(B);
R=U11*S1*V111;G=U22*S2*V222;B=U33*S3*V333;
A(:,:,1)=R;A(:,:,2)=G;A(:,:,3)=B; A=uint8(A);
DesName='1.jpg';imwrite(A,DesName);
imshow(1);

注:需要你把一张命名为 1.bmp的图片放在matlab默认路径里面
温馨提示:内容为网友见解,仅供参考
无其他回答

请教MATLAB高手,急求~~解题~~~
由题知需求速率u=20;每次订购费a=75;单位时间内存储费b=0.75。设周期为t,则单位时间内货物的平均费用f=a\/t+1\/2*b*u*t+e*u。e为货物的单价。根据微分求极值的方法,df\/dt=1\/2*b*u-a\/t^2=0。解得最优订货周期t=根号下(2*a\/(b*u))=根号下(2*75\/(0.75*20))=根号下(...

matlab高手请进~~~请教个编程问题~~~
这是一个简单的线性规划问题 给你看一个例题,一看就会了:某厂生产甲乙两种口味的饮料,每百箱甲饮料需用原料6千克,工人10名,可获利10万元;每百箱乙饮料需用原料5千克,工人20名,可获利9万元。今工厂共有原料60千克,工人150名,又由于其他条件所限甲饮料产量不超过8百箱。问如何安排生产计划,即...

matlab高手请进@!!!设计程序,完成两位数的加、减、乘、除四则运算
include <stdio.h> \/\/函数,读数操作数 int getNextNum(){ int ret;scanf("%d",&ret);return ret;} \/\/函数,读运算符 char getOpt(){ return getchar();} \/\/函数,计算 int caculate(int op1 , int op2 ,char opt){ if(opt=='+')return op1+op2;if(opt=='-')return op1-op2;...

matlab 排序问题,请高手指点
function result=paixu(a)temp=0;N=length(a);for j=1:2 swap=0;for i=1:N-1 if a(i,j)>a(i+1,j)temp=a(i,j);a(i,j)=a(i+1,j);a(i+1,j)=temp;swap=1;end end if(~swap)break;end end result=a;这样改写即可!你的代码的错误在于 if a(j,1)>a(j+1,1)%%你...

Matlab高手请进,如何实现数组移动?
m=length(A);B=zeros(m);B(2:end)=A(1:(end-1));B(1)=A(end);这样效率比较高 或者使用A=circshift(A,[0 1])具体用法可以参考help 按照下帖的方法,用A=[A(end) A(1:(end-1))]就好了,呵呵

请教高手!如何用Matlab穷举出这样的组合数?
这个问题其实就是变相问2-n,所有的组合情况,且这个组合不能有4 perms(x)具备输出向量x的所有组合情况,所以如果设定x= 2,3,4,5,6~~MaxNum 就会输出这个向量的全部排列组合 然后分别取1列,2列,,,MaxNum-2列 对每次取的数据的每一行进行正序排序,然后去除相同的行 最后在每一行前面补...

matlab高手请进```是Runge-Kutta算法的请问怎么做,下面的代码总提示有...
你那行 y(1)=y1直接改成初值。即x=a的时候,y的值 然后将你的for j=2:n 改成for i=2:n 应当就可以了。

高手请进!matlab画二维直方图!
我感觉差不多嘛 m=500;n=40;[i,j]=ndgrid(1:m,1:n);A=rand(m,n).\/(0.1+abs(i\/500-.5)).\/(0.1+abs(j\/40-.5));bar3(A)axis([0,n,0,m])camproj perspective view(-8,10)daspect([1 4 4])———A=dlmread('007hist.xyz');%读取数据,如果位置不对自己改 h=bar...

请教高手:matlab求三元函数的最小值问题
请教高手:matlab求三元函数的最小值问题 P=m1*exp(m2\/(x+m3));其中m1,m2,m3是参数,x是波长,目的就是确定m1,m2,m3的值。对P进行积分,积分区域为【280,600】,得到一个关于m1,m2,m3的式子。然后对这个式子求最小值!!怎么... P=m1*exp(m2\/(x+m3));其中m1,m2,m3是参数,x是波长,目的就是确定m1...

请各位高手帮我用matlab进行非线形回归,解出下面这个方程的参数!很急...
1. 先对方程两边求对数,化成线性的(以对数为变量)得到 2lny=lna-cx+lnb 现在问题就转化为求,用线性最小二乘就能搞定了。x=[-0.00657,-0.01209,-0.01892,-0.0257,-0.03348,-0.04063,-0.04886,-0.05555,-0.06307,-0.07003,-0.07821,-0.08602,-0.09509,-0.10393,-0.11152,-...

相似回答
大家正在搜