chaotic sequence generation from chen's hyperchaotic system
Show older comments
Hello
I need to generate two chaotic sequences based on chen's hyperchaotic system.It has to be generated from the following four formulas
X=ay-x;
Y=-xz+dx+cy-q;
Y=xy-bz;
Q=x+k;
where a,b,c,d,x,y,z,q are all initialised as follows. I need only X and Y where
X=[x1,x2,...x4n]
Y=[y1,y2,...y4n]
a=36 ;
b=3 ;
c=28 ;
d=16 ;
k=0.2 ;
x=0.3 ;
y=-0.4 ;
z=1.2 ;
q=1 ;
n=256 ;
I tried the following code but i'm not able to get it properly.
clc
clear all
close all
w=imread('C:\Users\Abzz\Desktop\lena.png');
[m n]=size(w)
a=36;
b=3;
c=28;
d=16;
k=0.2;
x(1)=0.3;
y(1)=-0.4;
z(1)=1.2;
q(1)=1;
for i=1:1:4(n)
x(i+1)=(a*(y(i)-x(i)));
y(i+1)=-(x(i)*z(i))+(d*x(i))+(c*y(i))-q(i);
z(i+1)=(x(i)*y(i))-(b*z(i));
q(i+1)=x(i)+k;
end
disp(x);
disp(y);
pls help. thanks in advance.
3 Comments
Geoff Hayes
on 15 Aug 2014
Abirami - why do you read in the image data into the a variable as
a=imread('C:\Users\Abzz\Desktop\lena.png');
only to replace this a couple of lines later with
a=36;
What are you attempting to do with the image? Since you have its dimensions m and n (you are assuming that the input image is 2D grayscale ) are you going to manipulate or scramble or encrypt the pixels?
mosarrat jahan
on 23 Sep 2016
how to generate chaotic sequence using logistic map of n*n image
Answers (1)
Geoff Hayes
on 16 Aug 2014
Abirami - you should provide a reference to a paper or document that describes Chen's Hyperchaotic System with respect to chaotic sequence generation. Or is this something new? From http://www.ijest.info/docs/IJEST11-03-05-262.pdf, there is some text that describes the hyperchaotic Chen dynamics as
xp = a*(y − x) + v
yp = d*x − x*u + c*y
up = x*y − b*u
vp = y*u + r*v
where x,y,u,v are the states of the system and a,b,c,d,r are constant, positive parameters of the system. This is very similar to your lines of code of
x(i+1) = (a*(y(i)-x(i)));
y(i+1) = -(x(i)*z(i))+(d*x(i))+(c*y(i))-q(i);
z(i+1) = (x(i)*y(i))-(b*z(i));
q(i+1) = x(i)+k;
where z and q are u and v respectively from the previous set of equations. Note that there are a couple of differences between the first and last equations in the two sets. As the first set is also similar to that found from http://www.ncnsd.org/proceedings/proceeding09/Paper/49.pdf, how did you decide on how to define your equations?
As for the code that generates the sequences,
for i=1:1:4(n)
x(i+1)=(a*(y(i)-x(i)));
y(i+1)=-(x(i)*z(i))+(d*x(i))+(c*y(i))-q(i);
z(i+1)=(x(i)*y(i))-(b*z(i));
q(i+1)=x(i)+k;
end
Your for loop iterates from 1 to 4(n)...which is just 4 as the (n) seems to be ignored (or rather, just displayed). Why have you chosen this? Are you trying to do this for just four iterations so that a chaotic sequence of length four is generated? Is your idea to generate a chaotic sequence for each pixel as
w=imread('C:\Users\Abzz\Desktop\lena.png');
[m n]=size(w);
% define a,b,c,d
for r=1:m
for s=1:n
% generate new pixel coordinate for img(r,s) using
% four iterations of the chaotic sequence
for k=1:4
% generate sequence
end
% last (fourth iteration) value from x and y sequences defines the
% scrambled pixel coordinate for w(r,s)
end
end
Is that the idea?
3 Comments
Abirami
on 16 Aug 2014
Geoff Hayes
on 16 Aug 2014
Abirami - I can't download the pdf (as there is a fee attached to it) so you will have to outline it in more detail. If you need 1024 iterations, then you can just change your code from
for i=1:1:4(n)
% etc.
end
to
for i=1:1:4*n
% etc.
end
Now your X and Y will each have 1024 elements. What is the next step?
Categories
Find more on Get Started with Image Processing Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!