Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2013-05-12
帖子: 2
声望力: 0 ![]() |
![]()
我的程序是先编译一张测试条纹图,然后对这个条纹图放到模拟3D坐标的显示器中,因为显示器的采样点不发生变化,因而当感觉图像显示凸出显示器时会产生混叠公式z=e*V/(e-d); x=V./z.*c-d./2; y=V./z.*r; 因为是显示器上的,那么x和y的值必须取整数。下面是我的程序,哪位大神能帮我修改下。 e=65mm是瞳距,V=600mm是观看距离,d=-24mm是视差,显示器的分辨率是0.4mm。
代码:
M=300; N=300; u0=50; v0=50; A=10; c=0:M-1; r=0:N-1; [C,R]=meshgrid(c,r); g=A*sin(u0*R+v0*C); g=mat2gray(g) imshow(g) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% mix %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% e=65*2.5; d=-24*2.5; V=600*2.5; z=e*V/(e-d); for c=1:M-1 for r=1:N-1 x=round((e.*(2.*c+d))/(2.*(e-d))); y=round((e.*r)/(e-d)); h=zeros(x,y); h(x,y)=g(c,r); end end imshow(h,[]); %h=mat2gray(h) figure 错误??? Attempted to access g(0,0); index must be a positive integer or logical. Error in ==> Untitled4 at 25 h(x,y)=g(c,r); 这是什么错误,怎么修改啊 |
![]() |
![]() |