what is wrong with my code ?

2 次查看(过去 30 天)
i generate a code to get the desired result as given in attached file but there is some problems in step-3, and i am unable to find desired result from step-3 so please help me where am i wrong, my code is here:
%
% STEP FIRST
clc;
clear all;
Imax=0.8;
Imin=0.2;
Im=Imax-Imin;
T = 20;
s1= @(x) ((2*Im*x/T)+Imin+Im/2).*(0<=x & x<=T/4) +((-2*Im*x/T)+Imin+3*Im/2).*(T/4<=x & x<=3*T/4)+((2*Im*x/T)+Imin-3*Im/2).*(3*T/4<=x & x<=T);
s2= @(x) ((-2*Im*x/T)+Imin+Im/2).*(0<=x & x<=T/4) + ((2*Im*x/T)+Imin-Im/2).*(T/4<=x & x<=3*T/4)+((-2*Im*x/T)+Imin+5*Im/2).*(3*T/4<=x & x<=T);
x = linspace(0, 20);
X = repmat(x, 1000, 10);
I1 = s1(x);
I2 = s2(x);
figure(1),plot(x,I1)
figure(2),plot(x,I2)
%%STEP-2 (wrapped map)
r0=abs(I1-I2)/Im;
figure(3),plot(x,r0)
%%STEP-3 (intensity ratio)
R=2;
r=2*round((R-1)/2)+((-1)^R+1)*r0;
figure(4),plot(x,r)
please find attachments
  2 个评论
KSSV
KSSV 2017-8-31
r is not defined in step 3.....
ajeet verma
ajeet verma 2017-8-31
it is by mistake and here r is r0 as defined above. but taking r0 result is not coming

请先登录,再进行评论。

采纳的回答

John D'Errico
John D'Errico 2017-8-31
编辑:John D'Errico 2017-8-31
Just explaining what KSSV said:
r=2*round((R-1)/2)+((-1)^R+1)*r;
See that r lies on BOTH sides of the equality here. But since it has never been used before, what is r? Should MATLAB somehow be smart enough that it can solve for r here? Or is that a typo? Never ask a computer to magically determine what you really intended to do, even if what you intended is not what you wrote. (The mind reading toolbox is not yet out of beta test stage.)
  1 个评论
ajeet verma
ajeet verma 2017-8-31
it is by mistake and here r is r0 as defined above. but taking r0 result is not coming

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by