How to encode images using chaotic mapping?

Hi everyone, I want to encode images using chaotic mappings. I divided it into 3 steps: bit permutation, pixel permutation, block permutation. I use logistic mapping as the key to encrypt. I hope everyone will guide me to write this program. I tried the program but not. Thanks very much.

댓글 수: 4

Geoff Hayes
Geoff Hayes 2018년 5월 18일
Huong - can you show us what you have tried so far?
Huong Hoang
Huong Hoang 2018년 5월 19일
Yes. But I think it is totally wrong. I bit permutation by converting the binary pixel R, G, B in a pixel image. But I did not know how to do it, because I study by myself so it took a lot of time. Can you help me show code? Very grateful to you.
Image Analyst
Image Analyst 2018년 5월 19일
Probably no one has such a program, nor would be inclined to read and understand a paper and then code it up. Good luck though. If you have a smaller, more specific/target question though, feel free to ask.
Hello Image Analyst, this is my code. I want in a pixel, each bit of the image plane R, G, B will be permutation using Logistic map: x (n + 1) = r * x (n) * (1-x (n)). Can you see and fix me?
function key = creatkey(m);
a = imread('E:\_temp_matlab_R2018a_win64\bin\y.jpg');
m=length(a);
r=3.7
x(1)=0.4
for i=2:m
x(i)= r*x(i-1)*(1-x(i-1));
end
disp(x)
[heigth,width,~]=zeros(0);
a=24*width*heigth
binary=zeros(1,n)
k=1
for i=1:heigth
for j=1:width
bin = c(i,j,1);
bin1 = dec2bin(binary);
for i=1:8
if bin1(i)=='1'
binary(k)=1
k=k+1
end
end
end
for j=1:width
bin = c(i,j,2);
bin1 = dec2bin(binary);
for i=1:8
if bin1(i)=='1'
binary(k)=1
k=k+1
end
end
end
for j=1:width
bin = c(i,j,3);
bin1 = dec2bin(binary);
for i=1:8
if bin1(i)=='1'
binary(k)=1
k=k+1
end
end
end

댓글을 달려면 로그인하십시오.

답변 (2개)

Chandu Sree
Chandu Sree 2020년 2월 10일

0 개 추천

function key = creatkey(m);
a = imread('E:\_temp_matlab_R2018a_win64\bin\y.jpg');
m=length(a);
r=3.7
x(1)=0.4
for i=2:m
x(i)= r*x(i-1)*(1-x(i-1));
end
disp(x)
[heigth,width,~]=zeros(0);
a=24*width*heigth
binary=zeros(1,n)
k=1
for i=1:heigth
for j=1:width
bin = c(i,j,1);
bin1 = dec2bin(binary);
for i=1:8
if bin1(i)=='1'
binary(k)=1
k=k+1
end
end
end
for j=1:width
bin = c(i,j,2);
bin1 = dec2bin(binary);
for i=1:8
if bin1(i)=='1'
binary(k)=1
k=k+1
end
end
end
for j=1:width
bin = c(i,j,3);
bin1 = dec2bin(binary);
for i=1:8
if bin1(i)=='1'
binary(k)=1
k=k+1
end
end
end
Chandu Sree
Chandu Sree 2020년 2월 10일

0 개 추천

function key = creatkey(m);
a = imread('E:\_temp_matlab_R2018a_win64\bin\y.jpg');
m=length(a);
r=3.7
x(1)=0.4
for i=2:m
x(i)= r*x(i-1)*(1-x(i-1));
end
disp(x)
[heigth,width,~]=zeros(0);
a=24*width*heigth
binary=zeros(1,n)
k=1
for i=1:heigth
for j=1:width
bin = c(i,j,1);
bin1 = dec2bin(binary);
for i=1:8
if bin1(i)=='1'
binary(k)=1
k=k+1
end
end
end
for j=1:width
bin = c(i,j,2);
bin1 = dec2bin(binary);
for i=1:8
if bin1(i)=='1'
binary(k)=1
k=k+1
end
end
end
for j=1:width
bin = c(i,j,3);
bin1 = dec2bin(binary);
for i=1:8
if bin1(i)=='1'
binary(k)=1
k=k+1
end
end
end

댓글 수: 2

any one here to do the Novel Medical Image Encryption Scheme Based
on Chaos and DNA Encoding project??
Rik
Rik 2020년 4월 18일
It is unclear to me what this comment has to with this thread or this answer in particular.

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Images에 대해 자세히 알아보기

질문:

2018년 5월 18일

댓글:

Rik
2020년 4월 18일

Community Treasure Hunt

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

Start Hunting!

Translated by