看看我这个程序那里错了(熟悉计算全息的高手请进)
close all;clc;clear;<BR>A=zeros(64);<BR>A(15:20,10:50)=1;<BR>A(20:50,30:35)=1;<BR>figure;imshow(A);<BR>B=fft2(fftshift(A));<BR>C=fftshift(B);<BR>Am=abs(C);<BR>Ph=angle(C);<BR>th=max(max(Am));<BR>Am=Am/th;<BR>Ph=Ph/(pi*2);<BR>cgh=zeros(64*13);<BR>hol=zeros(13);<BR>for m=1:64;<BR> for n=1:64;<BR>if abs(Ph(m,n))<=1/4;<BR>h=round(Am(m,n)*12);<BR>p=round(abs(Ph(m,n))*12);<BR>k=ones(h+1,7);<BR>hol(round(7-h/2):round(7+h/2),4+p:10+p)=k;<BR>else <BR> hol(round(7-h/2):round(7+h/2),4+p:13)=ones(h+1,10-p);<BR> hol(round(7-h/2):round(7+h/2),1:p-2)=ones(h+1,p-2);<BR> end;<BR>cgh((m-1)*13+1:m*13,(n-1)*13+1:n*13)=hol;<BR>end;<BR>end;<BR>figure;imshow(cgh,[]);<BR>Re=ifft2(cgh);<BR>Re=fftshift(Re);<BR>figure;imshow(abs(Re),[]);回复:(qdmagi)看看我这个程序那里错了(熟悉计算全...
请说明你想问什么问题?不要这么笼统<BR>没时间一句句看 <P>运行后没什么错误啊<BR>Warning: Image is too big to fit on screen; displaying at 67%<BR>> In imuitools\private\initSize at 86<BR>In imshow at 179<BR>Warning: Image is too big to fit on screen; displaying at 67%<BR>> In imuitools\private\initSize at 86<BR>In imshow at 179<BR>不过有警告,你是说的警告么?</P> 谢谢你。<BR>我想问的问题是:利用这个编码出来的计算全息图,最后再现的是一幅全黑的图。这明显是错误的。应该再现出T的像才对。<BR>所以,这个程序在内容上可能有问题,不是在语法上,所以我想问问计算全息的高手,哪里错了? 各位哥哥姐姐帮帮忙啊!回复:(qdmagi)看看我这个程序那里错了(熟悉计算全...
<P>上次不是给你发过一个全息方面的程序吗?<BR></P> 他那个我看不明白<BR>我自己写了一个<BR> 自己顶上去! Image is too big to fit on screen所以才最后再现的是一幅全黑的图吧<BR>计算全息偶不明白<BR>帮你顶哈:) 谢谢啊! 再次顶上去!<BR>大家不会烦吧? waiting! up!!! <P>顶上去吧?<BR>不好意思了?</P>回复:(qdmagi)看看我这个程序那里错了(熟悉计算全...
把imshow换成image看看
页:
[1]
2